package com.cjj.common.entity.po.master;

import com.baomidou.mybatisplus.annotation.*;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;

import java.io.Serializable;
import java.util.Date;

/**
* <p>
* 
* </p>
*
* @author BrownC_
* @since 2021-12-20
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@TableName("c_permission")
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="CPermission对象", description="")
public class CPermission implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "主键ID")
    @TableId(value = "id", type = IdType.ID_WORKER)
    private Long id;

    @ApiModelProperty(value = "权限url(权限类型为0-菜单的时候url可为NULL)")
    @TableField("url")
    private String url;

    @ApiModelProperty(value = "接口类型(POST / GET / PUT / DELETE)")
    @TableField("method")
    private String method;

    @ApiModelProperty(value = "菜单名称")
    @TableField("name")
    private String name;

    @ApiModelProperty(value = "菜单介绍")
    @TableField("summary")
    private String summary;

    @ApiModelProperty(value = "菜单等级")
    @TableField("level")
    private Integer level;

    @ApiModelProperty(value = "父ID")
    @TableField("parent_id")
    private Integer parentId;

    @ApiModelProperty(value = "菜单类型(0-菜单;1-按钮)")
    @TableField("menu_type")
    private Integer menuType;

    @ApiModelProperty(value = "是否展示(0-否;1-是)")
    @TableField("is_show")
    private Integer isShow;

    @ApiModelProperty(value = "是否删除(0-否;1-是)")
    @TableField("is_deleted")
    @TableLogic
    private Integer isDeleted;

    @ApiModelProperty(value = "创建时间")
    @TableField("create_time")
    private Date createTime;

    @ApiModelProperty(value = "更新时间")
    @TableField("update_time")
    private Date updateTime;


}
